HEAD
knitr::opts_chunk$set(echo = TRUE)
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✓ ggplot2 3.3.5 ✓ purrr 0.3.4
## ✓ tibble 3.1.5 ✓ dplyr 1.0.7
## ✓ tidyr 1.1.4 ✓ stringr 1.4.0
## ✓ readr 2.0.2 ✓ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(janitor)
##
## Attaching package: 'janitor'
## The following objects are masked from 'package:stats':
##
## chisq.test, fisher.test
library(dplyr)
library(GGally)
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
library(leaps)
library(ggfortify)
data = read.table("winequality-red.csv", sep=";", header=T)
lm1 = lm(quality ~ alcohol, data = data)
par(cex = 0.5)
plot(quality ~ alcohol, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# SULPHATES LINEARITY
lm1 = lm(quality ~ sulphates, data = data)
par(cex = 0.5)
plot(quality ~ sulphates, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# VOLATILE ACIDITY LINEARITY
lm1 = lm(quality ~ volatile.acidity, data = data)
par(cex = 0.5)
plot(quality ~ volatile.acidity, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# TOTAL SULFUR DIOXIDE LINEARITY
lm1 = lm(quality ~ total.sulfur.dioxide, data = data)
par(cex = 0.5)
plot(quality ~ total.sulfur.dioxide, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# FREE SULFUR DIOXIDE LINEARITY
lm1 = lm(quality ~ free.sulfur.dioxide, data = data)
par(cex = 0.5)
plot(quality ~ free.sulfur.dioxide, data = data)
abline(lm1, lwd = 3, col = 'red')
## Residuals and Normalitys
autoplot(lm1, which = 1:2)
# CHLORIDES LINEARITY
lm1 = lm(quality ~ chlorides, data = data)
par(cex = 0.5)
plot(quality ~ chlorides, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# pH LINEARITY
lm1 = lm(quality ~ pH, data = data)
par(cex = 0.5)
plot(quality ~ pH, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# citric.acid LINEARITY
lm1 = lm(quality ~ citric.acid, data = data)
par(cex = 0.5)
plot(quality ~ citric.acid, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# residual.sugar LINEARITY
lm1 = lm(quality ~ residual.sugar, data = data)
par(cex = 0.5)
plot(quality ~ residual.sugar, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# fixed.acidity LINEARITY
lm1 = lm(quality ~ fixed.acidity, data = data)
par(cex = 0.5)
plot(quality ~ fixed.acidity, data = data)
abline(lm1, lwd = 3, col = 'red')
## Residuals and Normalitys
autoplot(lm1, which = 1:2)
# density LINEARITY
lm1 = lm(quality ~ density, data = data)
par(cex = 0.5)
plot(quality ~ density, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
knitr::opts_chunk$set(echo = TRUE)
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.1.1
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.3 v dplyr 1.0.7
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 2.0.0 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(janitor)
##
## Attaching package: 'janitor'
## The following objects are masked from 'package:stats':
##
## chisq.test, fisher.test
library(dplyr)
library(GGally)
## Warning: package 'GGally' was built under R version 4.1.1
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
library(leaps)
## Warning: package 'leaps' was built under R version 4.1.1
library(ggfortify)
## Warning: package 'ggfortify' was built under R version 4.1.1
data = read.table("winequality-red.csv", sep=";", header=T)
lm1 = lm(quality ~ alcohol, data = data)
par(cex = 0.5)
plot(quality ~ alcohol, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# SULPHATES LINEARITY
lm1 = lm(quality ~ log(sulphates, 30), data = data)
par(cex = 0.5)
plot(quality ~ log(sulphates, 30), data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# VOLATILE ACIDITY LINEARITY
lm1 = lm(quality ~ log(sqrt((volatile.acidity))), data = data)
par(cex = 0.5)
plot(quality ~ log(sqrt((volatile.acidity))), data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# TOTAL SULFUR DIOXIDE LINEARITY
lm1 = lm(quality ~ log(total.sulfur.dioxide), data = data)
par(cex = 0.5)
plot(quality ~ log(total.sulfur.dioxide), data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# FREE SULFUR DIOXIDE LINEARITY
lm1 = lm(quality ~ free.sulfur.dioxide, data = data)
par(cex = 0.5)
plot(quality ~ free.sulfur.dioxide, data = data)
abline(lm1, lwd = 3, col = 'red')
## Residuals and Normalitys
autoplot(lm1, which = 1:2)
# CHLORIDES LINEARITY
lm1 = lm(quality ~ chlorides, data = data)
par(cex = 0.5)
plot(quality ~ chlorides, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# pH LINEARITY
lm1 = lm(quality ~ I(pH^2), data = data)
par(cex = 0.5)
plot(quality ~ I(pH^2), data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# citric.acid LINEARITY
lm1 = lm(quality ~ citric.acid, data = data)
par(cex = 0.5)
plot(quality ~ citric.acid, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# residual.sugar LINEARITY
lm1 = lm(quality ~ residual.sugar, data = data)
par(cex = 0.5)
plot(quality ~ residual.sugar, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)
# fixed.acidity LINEARITY
lm1 = lm(quality ~ fixed.acidity, data = data)
par(cex = 0.5)
plot(quality ~ fixed.acidity, data = data)
abline(lm1, lwd = 3, col = 'red')
## Residuals and Normalitys
autoplot(lm1, which = 1:2)
# density LINEARITY
lm1 = lm(quality ~ density, data = data)
par(cex = 0.5)
plot(quality ~ density, data = data)
abline(lm1, lwd = 3, col = 'red')
autoplot(lm1, which = 1:2)